import {
  getDepartments
} from '@/api/departments'
// 导入无限极分类的工具函数
import {
  tranListToTreeData
} from '@/utils'
// 获取部门数据并进行树形转换
export const transformDepartment = {
  data() {
    return {
      // 定义部门树形数据
      treeData: [],
      // 是否显示加载进度
      loading: false,
      // 树形组件的显示和隐藏
      showTree: false
    }
  },
  methods: {
    // 获取部门的树形数据
    async getDepartments() {
      this.loading = true
      const {
        depts
      } = await getDepartments()
      this.loading = false
      // 使用无限极分类的方法处理列表数据为树形数据
      this.treeData = tranListToTreeData(depts, '')
    },
    // 打开部门列表的树形组件
    async getDepartmentsTree() {
      // 获取完数据后再显示树形组件
      await this.getDepartments()
      this.showTree = true
    }
  }
}
